Channel-type supervised node positioning method for a wireless network

ABSTRACT

A method for positioning a collection of nodes within a wireless sensor network in which each node measures Respective Strength of Signals (RSSs), from its neighboring nodes, and channels linking regular nodes and its neighboring nodes are classified into different categories and are allocated path loss parameters accordingly. Distances separating each regular node from each of its neighboring nodes, and respective variances thereof, are estimated on the basis of the measured RSSs and the allocated path loss parameters. The positions of the regular nodes are then estimated by Weighted Least Square, optimization where the distances to be matched and the variances used for the weighting are those previously estimated.

TECHNICAL FIELD

The present application pertains to the field of wireless networks, more particularly to Wireless Sensor Networks (WSNs). It relates to a method for positioning nodes in such networks.

PRIOR ART

Wireless Sensor Networks (WSNs) can be applied to various areas such as military affairs, commerce, medical care, environment monitoring and have been a subject of intensive research over the last few years. In a wireless sensor network (WSN), data collected by the nodes (sensors) are typically collected and processed by one or more controlling nodes. In many applications (e.g. environment monitoring), processing of the data cannot be performed without knowing the respective positions of the nodes these data are collected from.

Many positioning algorithms have been proposed in the prior art to determine the location of nodes in a WSN. These algorithms generally assume that the position of certain nodes, also called anchor nodes or landmarks, have an a priori knowledge of their coordinates, e.g. by GPS positioning. The (absolute) positions of the other nodes, also called regular nodes, are then inferred from the positions of the anchor nodes.

Basically, positioning algorithms for WSNs fall into two categories: range-free and range-based.

Range-free positioning algorithms approximate the distances of the regular nodes to the anchor nodes on the basis of connectivity information. Representatives of range-free positioning algorithms are DV-Hop, amorphous, and centroid algorithms. For example a description of the DV-Hop algorithm can be found in the article of D. Niculescu et al. entitled “Ad Hoc positioning system” published in Proc. of Global Telecommunications Conference, 2001, GLOBECOM'01, San Antonio, Tex., USA, pp. 2926-2931. Basically, in DV-Hop each regular node determines its shortest path (in terms of number of hops) to a sufficient number of anchors. Similarly, each anchor node broadcasts its position and determines its shortest path (again, in terms of number of hops) to the remaining anchor nodes. Once an anchor node has determined its shortest paths to all the other anchor nodes, it calculates the average hop size as the ratio of distances and number of hops to all the other anchor nodes. Each regular node can then simply obtain a rough estimate of a distance to an anchor node by multiplying the number of hops to this node with the average hop size. Once the distances to three anchor nodes have been estimated, a coarse position of the node can be obtained by conventional trilateration.

Range-based positioning algorithms obtain point-to-point distance information between neighboring nodes and derive therefrom the location of the regular nodes. A range-based positioning algorithm, known as the WLS algorithm, is described in the article of M. Laaraiedh et al. entitled “Enhancing positioning accuracy through direct position estimators based on hybrid RSS data fusion” published in Proc. IEEE VTC'09, Spring Barcelona, Spain. According to this algorithm, the ranges between regular nodes and anchor nodes are estimated from received signal strength (RSS) observables. Once a regular node has measured a minimum number of observables, it may estimate the ranges to a plurality of anchor nodes. The coordinates of the regular node are determined as a weighted least square (WLS) solution of an over-determined set of equations, the weighting being determined by the covariance matrix of the range estimator considered, as further explained hereinafter.

FIG. 1 schematically illustrates a known wireless sensor network to which the node positioning method according to the invention can be applied.

The illustrated wireless sensor network comprises N nodes spatially distributed in a bi-dimensional area, including:

N_(a) anchor nodes, 110, with known locations, one of them playing the role of a network coordinator (NC), sometimes also referred to as network controller, the other anchors being either fixed routers or simple end-devices with augmented capabilities (e.g. GPS-enabled nodes),

and N_(r) regular nodes, 120, to be positioned.

The lines 130 represent radio-links between neighboring nodes. Assuming that each node is capable of measuring the strengths of the signals transmitted by other nodes, the one-hop neighborhood of a node i is the set of nodes defined as:

H(i)={j|P _(Rx,ij) >P _(th)}  (1)

where P_(Rx,ij) denotes the strength of the signal received by node i from node j and P_(th) is the detection threshold of the receiver (supposed here to be identical for all the nodes). The nodes are indexed by i=1, . . . , N, where without loss of generality, the N_(a) anchor nodes are assumed to bear the first indices i=1, . . . , N_(a) and the regular nodes to bear the last indices i=N_(a)+1, . . . , N (N=N_(a)+N_(r)).

Next, the WLS node positioning algorithm will be briefly described.

It is recalled that the path loss over a radio link between two neighboring nodes i and j can be modeled as follows:

PL(d)=PL₀+10α log₁₀ (d/d ₀)  (2)

where PL₀=20 log₁₀ (4πf_(c)d₀/c) is the path loss experienced by the radio signal at a reference distance d₀, d is the distance between the two nodes, f_(c) is the carrier frequency of the radio signal, c is the speed of light, and α is the path loss decay exponent.

The path loss decay exponent basically depends upon the type of environment. For example α=2 for a line of sight (LOS) configuration in free space but has a higher value in obstructed environments.

Expression (2) is based on a simple exponential decay model of the power received through a radio link. The strength of the received signal actually varies according to a zero-mean Gaussian variable accounting for shadowing. Shadowing is a fluctuation of the attenuation due to the presence of obstacles between the transmitter and the receiver. More specifically, shadowing encompasses absorption, reflection, scattering and diffraction by these obstacles.

The strength of the signal received by a node from a neighboring one can be expressed as:

P _(Rx)(d)=P _(Tx) +G _(Tx) +G _(Rx)−PL(d)+z  (3)

where z is the above-mentioned Gaussian variable having a variance σ_(z) ². The variance θ_(z) ², also called the shadowing coefficient, depends on the type of environment in which the network is located. P_(Rx)(d) is the strength of the received signal at the distance d, P_(Tx) is the power of transmitted signal (expressed e.g. in dBm), G_(Tx) and G_(Rx) are respectively the antenna gains of the transmitter and the receiver (expressed in dBi).

Expression (3) can equivalently be reformulated as:

P _(Rx)(d)= P _(Rx)(d)+z  (4)

where P_(Rx)(d) is the mean value of the received signal strength.

For a given received signal strength P_(Rx,ij) measured by the receiver of node i, the distance d_(ij) between the nodes i and j can be estimated from (3), e.g. by the median estimator:

{tilde over (d)} _(ij)=exp(M _(ij))  (5)

with

$M_{ij} = {\frac{\left( {\left\lbrack {P_{Tx} + G_{Rx} + G_{Tx} - P_{{Rx},{ij}}} \right\rbrack - {PL}_{0}} \right){\log (10)}}{10\; \alpha_{ij}} + {\log \left( d_{0} \right)}}$

and where the distance estimate {tilde over (d)} and the path loss decay coefficient α have been indexed here by i,j in order to emphasize their dependence upon the link considered.

In a centralized algorithmic embodiment, once all the distances between neighboring nodes have been estimated, the coordinates of the regular nodes may be obtained through WLS optimization. More specifically, if we denote X=(x_(Nα+1), . . . x_(N)) and Y=(y_(Nα+1), . . . , y_(N)) respectively the abscissas and the ordinates of the regular nodes, the coordinates of these nodes can be estimated by minimizing the quadratic cost function:

$\begin{matrix} {\left( {{\hat{X}}^{WLS},{\hat{Y}}^{WLS}} \right) = {\underset{({\hat{X},\hat{Y}})}{argmin}\left\lbrack {\sum\limits_{i = {N_{a} + 1}}^{N}\; {\sum\limits_{\underset{j > i}{j \in {H{(i)}}}}\; {\frac{1}{\sigma_{d,{ij}}^{2}}\left( {{\hat{d}}_{ij} - {\overset{\sim}{d}}_{ij}} \right)^{2}}}} \right\rbrack}} & (6) \end{matrix}$

where {circumflex over (d)}_(ij)=√{square root over (({circumflex over (x)}_(i)−{circumflex over (x)}_(j))²+(ŷ_(i)−ŷ_(j))²)} and σ_(d,ij) ² is the variance of the estimator of distance d_(ij). Equivalently, the WLS optimization can be carried out as follows:

$\begin{matrix} {\left( {{\hat{X}}^{WLS},{\hat{Y}}^{WLS}} \right) = {\underset{({\hat{X},\hat{Y}})}{argmin}\left\lbrack {\sum\limits_{i = 1}^{N}\; {\overset{N}{\sum\limits_{j = 1}}\; {\frac{I_{ij}}{\sigma_{d,{ij}}^{2}}\left( {{\hat{d}}_{ij} - {\overset{\sim}{d}}_{ij}} \right)^{2}}}} \right\rbrack}} & (7) \end{matrix}$

where I_(ij) are the elements of the network adjacency matrix defined as I_(ij)=1 if jεH(i), and I_(ij)=0 otherwise. It will be understood that the weighting performed in the WLS algorithm refers to variance terms σ_(d,ij) ² in expressions (6) and (7): the largest the variance and, hence, the uncertainty of the distance estimate, the lower the weight of the corresponding quadratic error ({tilde over (d)}_(ij)−{tilde over (d)}_(ij))² in the cost function.

Assuming that the receiver of each node is ideal P_(th)=−∞ expressed in dB) and that the above-mentioned median estimator is used, it can be shown that the variance σ_(d,ij) ² of the distance d_(ij) depends upon the shadowing coefficient σ_(z) ¹ as follows:

σ_(d,ij) ² =d _(ij) ² e ^(S) ^(ij) ² (e ^(S) ^(ij) ² −1)  (8)

with

$S_{ij} = \frac{\sigma_{z,{ij}}\ln \; 10}{10\alpha_{ij}}$

where σ_(z,ij) is the shadowing coefficient of the channel between nodes i and j.

Under the same assumption as above, in typical operating conditions, the bias of the median estimator is negligible and the actual distance d_(ij) in (8) can be replaced by its estimate {tilde over (d)}_(ij) to get an approximate value {circumflex over (σ)}_(d,ij) ² of σ_(d,ij) ².

The conventional WLS positioning algorithm suffers from several severe limitations.

First, this algorithm assumes that the path loss decay exponents α_(ij) and the variance terms σ_(d,ij) ² are available a priori. However, this condition is rarely met in practice as the environment and the channel configuration are often unknown or may change as a function of time. Furthermore, the nodes can be mobile and, in such instance, the terms α_(ij) and σ_(d,ij) ² may vary due to a change of environment and/or channel configuration.

Second, the receivers have in practice a limited sensitivity (i.e. a finite detection threshold if P_(th) is labeled in dBm). The probability density function of the received signal strength P_(Rx) expression (3) is not a Gaussian distribution anymore but is truncated below the detection threshold P_(th). This truncation leads in turn to a so-called “distortion” of the probability density function of the estimation errors {tilde over (d)}_(ij)−d_(ij) in comparison with the standard Gaussian centered case.

FIG. 2A represents the probability density functions of the received signal strength (RSS), P_(Rx), respectively measured by an ideal receiver and a non-ideal receiver having a detection threshold P_(th).

It will be noted that the probability density function of the received signal strength for the ideal receiver is represented by a Gaussian curve (210) whereas the one for the non-ideal receiver (220) has a similar shape but truncated below P_(th). Strictly speaking, curve (220) represents a conditional probability density function (probability of the received signal strength conditioned on true detection of the signal). For the sake of understanding and for facilitating the comparison with the ideal case, the conditional probability density has not been normalized.

FIG. 2B represents the probability density functions of the estimation ranging error {tilde over (d)}−d (the indices referring to the nodes are omitted for the sake of simplification) for an ideal receiver (230) and a non-ideal receiver (240). As above, the probability should be understood as conditioned by true detection of the signal. The normalization has also been omitted for the sake of comparison.

While the probability density function 230 is substantially Gaussian and centered, the probability density function 240 is not centered anymore. In the latter case, distance estimation is affected by a systematic bias μ_(d)=E({tilde over (d)}−d)≠0 where E(•) is the mathematical expectation. Similarly, variance σ_(d) ² can no longer be obtained from expression (8) for the purpose of the WLS optimization (7).

The problem underlying the invention is therefore to propose a node positioning algorithm for a WSN network which does not require knowledge of the environment and the channel configurations and which is nevertheless accurate.

A subsidiary problem is to propose a node positioning algorithm that further allows for the use of real receivers with limited power sensitivity.

DISCLOSURE OF THE INVENTION

The present invention is defined in the appended independent claims. Various advantageous embodiments are given in the dependent claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be better understood from the description of the following embodiments, by way of illustration and in no way limitative thereto:

FIG. 1 schematically illustrates a wireless sensor network having anchor nodes and regular nodes;

FIG. 2A schematically represents the probability distributions of the received signal strength for an ideal and a non-ideal receiver;

FIG. 2B schematically represents the probability distributions of the distance estimate error for an ideal and a non-ideal receiver;

FIG. 3 schematically illustrates a method of node positioning for a wireless network according to a first embodiment of the invention;

FIG. 4 schematically illustrates a method of node positioning for a wireless network, according to a variant of this embodiment;

FIG. 5 schematically illustrates a method of node positioning for a wireless network, according to a second embodiment of the invention;

FIG. 6 schematically illustrates a method of node positioning for a wireless network, according to a third embodiment of the invention.

DETAILED DISCLOSURE OF PARTICULAR EMBODIMENTS

We will consider in the following a wireless network, for example a WSN network comprising anchor nodes (the respective positions of which are known) and regular nodes (the respective positions of which have to be determined). For example, the WSN network may comply with the IEEE 802.15.4 standard.

Each regular node is equipped with a receiver having a limited sensitivity. Without prejudice of generalization, we will assume in the following that all the receivers have the same RSS detection threshold P_(th).

The idea at the basis of the invention is to propose a node positioning algorithm which is supervised by a channel configuration classifier. By channel configuration we mean here inter alia line-of-sight (LOS) or non line-of-sight (NLOS). A further channel configuration denoted NLOS² can also be envisaged, it refers to a NLOS situation where the propagation channel exhibits severe attenuation (deep fade) due to an obstruction.

FIG. 3 diagrammatically represents a node positioning algorithm according to a first embodiment of the invention.

The node positioning algorithm is performed after the network discovery has been completed. Preferably, the nodes are grouped into clusters and the node positioning algorithm is carried out individually on each cluster. Without loss of generality, we will assume in the following that the network contains only one cluster.

At step 310, each regular node i of the network measures the respective received signal strengths (RSSs) of the signals it respectively receives from its neighbors j.

At step 320, the propagation channels linking neighboring nodes are classified into different channel categories. For example, the channels can be classified into line of sight (LOS) and non line of sight (NLOS) categories as explained further below. Preferably, the channels are classified into three categories: LOS, NLOS and NLOS² as defined above. Additional categories may be envisaged without departing from the scope of the present invention.

At step 330, each channel C_(ij) between neighboring nodes i and j is allocated a path loss decay exponent α_(ij), a path loss reference PL_(0,ij) and a shadowing coefficient σ_(z,ij) ², according to the category the channel belongs to. It will be understood that the path loss law according to (3) is then completely defined, provided the reference distance d₀ is known. In some instances, the reference distance d₀ may depend upon the category of the channel, the reference distances are then denoted d_(0,LOS), d_(0,NLOS), and d_(0,NLOS) ₂ .

If channel C_(ij) has been classified as LOS, α_(ij)=α_(LOS), PL_(0,ij)=PL_(0,LOS) and σ_(z,ij) ²=σ_(LOS) ². Conversely, if channel C_(ij) has been classified as NLOS, α_(ij)=α_(NLOS), PL_(0,ij)=PL_(0,NLOS) and σ_(z,ij) ²=σ_(NLOS) ². The same applies mutatis mutandis to NLOS². The parameters α_(LOS), α_(NLOS), α_(NLOS) ₂ , PL_(0,LOS), PL_(0,NLOS), PL_(0,NLOS) ₂ , σ_(LOS) ², σ_(NLOS) ², σ_(NLOS) ₂ ² are determined a priori by a channel model in 335. This model can depend upon the type of environment (e.g. urban, rural) in which the network is located.

At step 340, distance estimates {tilde over (d)}_(ij) are calculated from the received signal strengths measured at step 310 and the path loss decay exponents obtained at step 330.

More specifically, the estimate {tilde over (d)}_(ij) of the distance between nodes i and j is given by expression (5), that is:

{tilde over (d)} _(ij)=exp(M _(ij)) where

$\begin{matrix} {M_{ij} = {\frac{\left( {\left\lbrack {P_{Tx} + G_{Rx} + G_{Tx} - P_{{Rx},{ij}}} \right\rbrack - {PL}_{0,{ij}}} \right){\log (10)}}{10\; \alpha_{ij}} + {\log \left( d_{0,{ij}} \right)}}} & (9) \end{matrix}$

with P_(Rx,ij) is the RSS of the signal received by node i from node j, PL_(0,ij) is the path loss data at reference distance d_(0,ij) (indexation by ij accounts here for the case where different reference distances are chosen for different channel categories e.g. d_(0,ij)=d_(0,LOS), or d_(0,ij)=d_(0,NLOS) ₂ ), α_(ij)=α_(LOS), α_(ij)=α_(NLOS) or α_(ij)=α_(NLOS) ₂ depending on the category of the channel.

For each channel, the variance of the distance estimator is obtained by the approximation:

{tilde over (σ)}_(d,ij) ² =[{tilde over (d)} _(ij) ²exp(S _(ij) ²)(e ^(S) ^(ij) ² −1)]  (10)

where

$S_{ij} = {\frac{\sigma_{z,{ij}}\ln \; 10}{10\alpha_{ij}}.}$

At step 350, the positions of the regular nodes are estimated by minimizing the weighted quadratic cost function:

$\begin{matrix} {\left( {{\hat{X}}^{WLS},{\hat{Y}}^{WLS}} \right) = {\underset{({\hat{X},\hat{Y}})}{argmin}\left\lbrack {\sum\limits_{i = 1}^{N}\; {\overset{N}{\sum\limits_{j = 1}}\; {\frac{I_{ij}}{{\overset{\sim}{\sigma}}_{d,{ij}}^{2}}\left( {{\hat{d}}_{ij} - {\overset{\sim}{d}}_{ij}} \right)^{2}}}} \right\rbrack}} & (11) \end{matrix}$

where {circumflex over (X)}=[{circumflex over (x)}_(N) _(α) ₊₁ . . . {circumflex over (x)}_(i) . . . {circumflex over (x)}_(N)], Ŷ=[ŷ_(N) _(α) ₊₁ . . . ŷ_(i) . . . ŷ_(N)] and {circumflex over (d)}_(ij)=√{square root over (({circumflex over (x)}_(i)−{circumflex over (x)}_(j))²+(ŷ_(i)−ŷ_(j))²)}.

It should be understood that only the terms ({circumflex over (d)}_(ij)−{tilde over (d)}_(ij))² for which I_(ij)=1 need to be calculated in (11), that is only the terms for which at least node i or node j is a regular node and P_(Rx,ij)>P_(th). Where one of these nodes is an anchor node, its coordinates {circumflex over (x)}_(i), ŷ_(i) are those which are known.

The WLS solution ({circumflex over (X)}^(WLS),Ŷ^(WLS)) gives estimates of the abscissas [{circumflex over (x)}_(N) _(α+1) ^(WLS), . . . , {circumflex over (x)}_(N) ^(WLS)] and ordinates [ŷ_(Nα+1) ^(WLS), . . . , ŷ_(N) ^(WLS)] of the regular nodes.

Minimization of quadratic cost function (11) can be achieved in various ways e.g. by using the algorithm of steepest descent. This algorithm can be initialized by an initial guess of the coordinates of the regular nodes. Advantageously, a range-free node positioning method such as the DV-hop referred to above may provide this initial guess.

The node positioning algorithm described above can be carried out, at least partially, in a centralized way, at the network coordinator. In such instance, the RSS measurements P_(Rx,ij) or, preferably, the distance estimates {tilde over (d)}_(ij) are forwarded to the network controller in charge of the WLS optimization. According to a variant, the network coordinator can collect the RSS measurements or the distance estimates and forward them to a calculation node.

Channel classification in 320 can be obtained in various ways.

For example, the channel classification can be based on the statistical properties of the power envelope of the received signal.

For a LOS path, the power envelope exhibits a Ricean distribution whereas for a NLOS path, the power envelope exhibits a Rayleigh distribution. The fit to one distribution or the other can be determined e.g. by using a Kolgomorov-Smirnov test.

Alternately, LOS/NLOS discrimination can be based on the crossing rate of the power envelope (i.e. the rate at which the power envelope crosses a predetermined level) and/or the average fade duration (i.e. how long the power envelope remains below a predetermined level).

A detailed description of the above-mentioned channel classification methods can be found in the article of S. Al-Jazzar et al. entitled “New algorithms for NLOS identification”, published in IST Mobile and Wireless Comm. Summit, Dresden, 2005, incorporated herein by reference.

According to another variant, the channel classification can be based on the statistics of the strength of the received signal (RSS). A detailed description of the two channel classification methods can be found in the article of K. Yu et al. entitled “Statistical NLOS identification based on AOA, TOA and signal strength” published in IEEE Trans. on Vehicular Technology, vol. 58, No. 1, January 2009, pp. 274-286, incorporated herein by reference.

According to a preferred variant illustrated in FIG. 4, the channel classification is obtained by exploiting the WLS optimization residuals.

In FIG. 4, steps 410, 430 to 450 are identical to steps 310, 330 to 350 of FIG. 3 and their description will therefore not be repeated here.

However, by contrast with the first variant, channel classifier 420 systematically classifies the channels into the LOS category in a first attempt. In other words all C_(ij) are initially assumed to be LOS in a first run.

Once the positions of the regular nodes have been estimated in 450, the WLS optimization residuals, |{circumflex over (d)}_(ij) ^(WLS)−{tilde over (d)}_(ij)| (or ({circumflex over (d)}_(ij) ^(WLS)−{tilde over (d)}_(ij))²) are calculated in step 460, where:

{circumflex over (d)} _(ij) ^(WLS)=√{square root over (({circumflex over (x)} _(i) ^(WLS) −{circumflex over (x)} _(j) ^(WLS))²+(ŷ _(i) ^(WLS) −ŷ _(j) ^(WLS))²)}  (12)

is a refined estimate of the distance separating nodes i and j based on WLS optimization of the positions of the nodes. Again, if i or j is an anchor node its actual coordinates are used instead of estimates in (12) for the calculation of the WLS optimization residual.

It should be understood that only the optimization residuals contributing to the cost function are actually calculated (those for which adjacency matrix element I_(ij)≠0, i.e. those involving at least one regular node with P_(Rx,ij)>P_(th)).

These optimization residuals are provided to the channel classifier at step 420 which, in a second run, classifies the channels as follows:

If |{circumflex over (d)}_(ij) ^(WLS)−{tilde over (d)}_(ij)|≦δ, where δ is a predetermined error margin, the first guess (LOS category) is confirmed, C_(ij) is classified as LOS.

Else, the first guess is infirmed and C_(ij) is classified as NLOS.

In practice, a value of δ=0.25 m has been found acceptable for IEEE 802.15.4-compliant networks in a typical 50 m*50 m scene.

Preferably, channels classified as NLOS are ranked according to their optimization residuals and a predetermined part of these channels are promoted to category NLOS². More specifically, a predetermined percentage of the NLOS channels exhibiting the highest optimization residuals are considered as NLOS². Alternately, the channels for which the first guess was erroneous beyond a second error margin, i.e. |{circumflex over (d)}_(ij) ^(WLS)−{tilde over (d)}_(ij)|>Δ, where Δ>δ, are considered as NLOS². In practice a value of Δ=0.5 m has been found acceptable in the scenario mentioned above.

At any rate, steps 430, 440 and 450 are carried out once again with the updated channel classification. Step 450 outputs refined estimates of the positions of the regular nodes, denoted {circumflex over (X)}₍₂₎ ^(WLS) and Ŷ₍₂₎ ^(WLS).

It will be understood that the cooperative process of channel classification, path-loss based distance estimation and WLS optimization can be iterated. More precisely, channel classification will benefit from a more accurate positioning and the WLS optimization will conversely benefit from a more accurate channel classification. The process is iterated until a stopping criterion is met. The stopping criterion can be based for example on a distance between consecutive position estimates such as:

∥{circumflex over (X)}_((n)) ^(WLS) −{circumflex over (X)} _((n-1)) ^(WLS) ∥+∥Ŷ _((n)) ^(WLS) −Ŷ _((n-1)) ^(WLS)∥<ε  (13)

where ε is a predetermined positive number and n the latest iteration step. Alternately or subsidiarily, the iteration process can be stopped when a predetermined number of iterations is reached.

As already indicated above, the channel classifier of the preferred variant initially assumes that all channels are LOS. Alternately however, if a channel classification is available, e.g. as provided by one of the classification methods set out above (based on the statistics of the power envelope or RSSI measurements) the channel classifier may start from this available classification. If the initial guess proves to be erroneous for a given channel (e.g. optimization residual greater than δ when the channel was classified as LOS), the channel may then be tentatively classified in another category.

Again, the node positioning algorithm described above can be carried out, at least partially, in a centralized way, at the network coordinator. In such instance, the RSS measurements P_(Rx,ij) or, preferably, the distance estimates {tilde over (d)}_(ij) are forwarded to the network controller in charge of the WLS optimization. According to a variant, the network coordinator can collect the RSS measurements or the distance estimates and forward them to a calculation node.

FIG. 5 illustrates a node positioning algorithm according to a second embodiment of the invention.

It is assumed in this embodiment that the channels are classified according to the statistics of their CIRs as in the first variant described above, or that the channel classification is provided by a distinct and independent classifier.

Contrary to the first embodiment in which path loss parameters α_(LOS), α_(NLOS), α_(NLOS) ₂ , PL_(0,LOS), PL_(0,NLOS) ₂ , σ_(LOS) ², σ_(NLOS) ², σ_(NLOS) ₂ ² were assumed to be known a priori from the channel model, the present embodiment performs a blind estimation of at least some of these parameters, as explained hereinafter.

Steps 510, 520, 540, 550 are identical to steps 310, 320, 340, 340, and therefore their description will be omitted.

At step 530, the path loss parameters of LOS, NLOS and NLOS² are initialized at predetermined values.

The distances estimates, {tilde over (d)}_(ij), are then first calculated in step 540 on basis of these initial values.

After the positions of the regular nodes have been estimated in 550, refined estimates of the distances between the regular nodes, {circumflex over (d)}_(ij) ^(WLS), are calculated in step 560 according to expression (12).

The path loss parameters are then estimated in 570 on the basis of the refined distance estimates. More specifically, the channels are clustered into groups of LOS, NLOS and NLOS² channels and, for each group, a set of equations according to (3) is solved. For example, for the group of LOS channels, α_(LOS), PL_(0,LOS) can be estimated by solving:

PL_(ij)=

_(0,LOS)=10{circumflex over (α)}_(LOS) log₁₀ ({circumflex over (d)} _(ij) ^(WLS) /d _(0,LOS))  (14)

where path loss PL_(ij) is determined from P_(Rx,ij) according to expression (3),

_(0,LOS) and {circumflex over (α)}_(LOS) are respectively the path loss reference and the exponent decay coefficient estimates of a LOS channel. It has been assumed in (14) that the reference distance d_(0,LOS) was known. In practice, it may also be estimated together with α_(LOS), PL_(0,LOS) by solving the set of equations (14) for the LOS channels.

The set of equations (14) (or similar sets of equations for NLOS and NLOS²) are generally over-determined and hence can be solved via LS optimization. If needed, an estimation of the shadowing coefficient σ_(LOS) ², denoted {circumflex over (σ)}_(LOS) ², can be obtained from the estimation errors on PL_(LOS) fitting. The same applies also to NLOS and NLOS².

The path loss parameters estimated in 570 can be used for a second distance estimation in 540 and node positioning in 550. In fact, the cooperative process of node positioning and path loss parameters estimation can be iterated: a more accurate positioning leads to more accurate parameters, and vice versa.

The process is iterated until a predetermined stopping criterion is met. In addition to stopping condition (12) a further condition on consecutive estimates of the path loss parameters can be envisaged such as:

|

^((n))−

^((n-1))∥<η  (15)

where

^((n)) represents an estimate of any of the PL parameters above obtained at the n^(th) iteration and η is a predetermined positive number.

FIG. 6 illustrates a node positioning algorithm according to a third embodiment of the invention.

The third embodiment differs from the first in that the effects of sensitivity limitation of the receivers are now taken into account.

More specifically, steps 610 to 640 are identical to steps 310 to 340, respectively.

At step 645, however, the systematic biases on the distance estimates and the change of the distance variance terms, induced by the sensitivity limitation, are corrected.

Assuming the median estimator is used, it is recalled (see expression (5)) that, for a perfect receiver with infinite sensitivity (i.e. infinite detection threshold in dBm), the distance d can be estimated from received signal strength P_(Rx):

{tilde over (d)}=exp(M) where

$M = {\frac{\left( {\left\lbrack {P_{Tx} + G_{Rx} + G_{Tx} - P_{Rx}} \right\rbrack - {PL}_{0}} \right){\log (10)}}{10\; \alpha} + {\log \left( d_{0} \right)}}$

For a real receiver having finite detection threshold P_(th), only the detected received power below this threshold can be taken into account into the further ranging and positioning calculi. Hence, the shape of the (conditional i.e. conditioned on a detection) probability density function of the RSS can be considered as truncated in comparison with the one of an ideal receiver with an infinite threshold (P_(th)=−∞ in dBm). The median distance estimator is consequently affected by a bias μ_(d)=E_(z)({tilde over (d)}−d) where the expectation is taken over the distribution of random variable z (see expression (4)). This bias can be calculated from threshold value P_(th) as follows:

$\begin{matrix} {\mu_{d} = {d\left\lbrack {{\frac{1}{2\sqrt{2\; A}\sigma_{z}\Pr_{\det}}{\exp \left( \frac{B^{2} - {4\; {AC}}}{4\; A} \right)}{{erfc}\left( \frac{B}{2\sqrt{A}} \right)}} - 1} \right\rbrack}} & (16) \end{matrix}$

With

${A = \frac{1}{2\sigma_{z}^{2}}},\mspace{31mu} {B = {\frac{\ln (10)}{10\alpha} + \frac{P_{th} - {\overset{\_}{P}}_{Rx}}{\sigma_{z}^{2}}}},{and}$ ${C = {\left( {P_{th} - {\overset{\_}{P}}_{Rx}} \right)\left( {\frac{\ln (10)}{10\alpha} + \frac{P_{th} - {\overset{\_}{P}}_{Rx}}{\sigma_{z}^{2}}} \right)}},$

and Pr_(det) is the detection rate of the received signal:

$\begin{matrix} {\Pr_{\det} = {{\int_{P_{th}}^{+ \infty}{{{pdf}\left( P_{Rx} \right)}\ {P_{Rx}}}} = {\frac{1}{2}{{erfc}\left( \frac{P_{th} - {\overset{\_}{P}}_{Rx}}{\sqrt{2\sigma_{z}}} \right)}}}} & (17) \end{matrix}$

where P _(Rx) the mean received signal strength and erfc(•) is the Gauss error function.

Similarly, due to the sensitivity limitation, the variance of the distance estimator cannot be obtained from expression (8) anymore. Starting from the definition σ_(d) ²=E_(z)[({tilde over (d)}−d)²]−μ_(d) ² where the expectation is taken over the distribution of random variable z, it can be shown that this variance can be expressed as:

$\begin{matrix} {\sigma_{d}^{2} = {{d^{2}\left\lbrack {{\frac{1}{2\sqrt{2A^{\prime}}\sigma_{z}\Pr_{\det}}{\exp \left( \frac{B^{\prime 2} - {4\; A^{\prime}C^{\prime}}}{4\; A^{\prime}} \right)}{{erfc}\left( \frac{B^{\prime}}{2\sqrt{A^{\prime}}} \right)}} - {2\left( \frac{\mu_{d}}{d} \right)} - 1} \right\rbrack} - \mu_{d}^{2}}} & (18) \end{matrix}$

with A′=A,

${B^{\prime} = {\frac{\ln (10)}{5\alpha} + \frac{P_{th} - {\overset{\_}{P}}_{Rx}}{\sigma_{z}^{2}}}},{C^{\prime} = {\left( {P_{th} - {\overset{\_}{P}}_{Rx}} \right)\left( {\frac{\ln (10)}{5\alpha} + \frac{P_{th} - {\overset{\_}{P}}_{Rx}}{2\sigma_{z}^{2}}} \right)}}$

It should be noted that expressions (16) and (17) are parametric functions of distance d. These parametric functions can be pre-computed for various values of d and the results stored in a look-up table.

Turning back to step 645, the distance estimates {tilde over (d)}_(ij) obtained at step 640 are corrected as follows:

{tilde over (d)} _(ij) ^(corr) ={tilde over (d)} _(ij)−{circumflex over (μ)}_(d,ij)  (19)

where {tilde over (d)}_(ij) ^(corr) denotes the corrected estimate of the distance between nodes i and j and where {circumflex over (μ)}_(d,ij) is obtained from equation (16) by using the distance estimate d={tilde over (d)}_(ij).

Similarly, the corrected distance variance terms, ({tilde over (σ)}_(d,ij) ^(corr))² can be calculated from expression (18) by using the distance estimate d={tilde over (d)}_(ij). According to a variant, the corrected distance {tilde over (d)}_(ij) ^(corr) can be used instead.

At step 650, the positions of the regular nodes are estimated by minimizing the corrected cost function:

$\begin{matrix} {\left( {{\hat{X}}_{corr}^{WLS},{\hat{Y}}_{corr}^{WLS}} \right) = {\underset{({\hat{X},\hat{Y}})}{argmin}\left\lbrack {\sum\limits_{i = 1}^{N}\; {\overset{N}{\sum\limits_{j = 1}}\; {\frac{I_{ij}}{\left( {\overset{\sim}{\sigma}}_{d,{ij}}^{corr} \right)^{2}}\left( {{\hat{d}}_{ij} - {\overset{\sim}{d}}_{ij}^{corr}} \right)^{2}}}} \right\rbrack}} & (20) \end{matrix}$

As for the previous embodiments, minimization of the corrected cost function (20) can be achieved in various ways e.g. iteratively by using the steepest descent algorithm.

According to a variant of the third embodiment (not described), the distance correction and distance variance correction (645) are not performed prior to the minimization of the cost function (650). Instead, if the minimization of the cost function is carried out iteratively, the distance correction and variance correction are updated at each iteration. More specifically, if {circumflex over (x)}_(i) ^((m)),ŷ_(i) ^((m)) denote the abscissas and the ordinates of the nodes at current iteration m, the corrected distance {tilde over (d)}_(ij) ^(corr) and the corrected variance ({tilde over (σ)}_(d,ij) ^(corr))² at iteration m+1 are calculated from expressions (16) and (18), by using the refined distance estimate {circumflex over (d)}_(ij) ^((m))=(({circumflex over (x)}_(i) ^((m))−{circumflex over (x)}_(j) ^((m)))²+(ŷ_(i) ^((m))−ŷ_(j) ^((m)))²)^(1/2) just obtained.

It will be understood by the man skilled in the art that the present embodiment can also be combined with the various channel classification methods described in relation with the first embodiment. For example, the channel classification in 620 can be performed on the basis of the optimization residuals of corrected cost function (20). The cooperative process of channel classification and node positioning can also be iterated in the same way as described in relation with FIG. 4, until a predetermined stopping criterion is met.

Furthermore, the present embodiment can also be combined with the channel parameters blind estimation described in the relation with FIG. 5. More precisely, refined estimates of the distances between the regular nodes can be obtained by the positions obtained at step 650, similar to (12):

{circumflex over (d)} _(corr,ij) ^(WLS)=√{square root over (({circumflex over (x)} _(corr,i) ^(WLS) −{circumflex over (x)} _(corr,j) ^(WLS))₂+(ŷ _(corr,i) ^(WLS) −ŷ _(corr,j) ^(WLS))²)}  (21)

where {circumflex over (x)}_(corr,i) ^(WLS) and ŷ_(corr,i) ^(WLS) are the elements of vectors {circumflex over (X)}_(corr) ^(WLS) and Ŷ_(corr) ^(WLS) respectively. These refined distance estimates can then be used to refine the channel model and update the channel parameters. As in the second embodiment, the cooperative process of blind channel parameters estimation and node positioning can be iterated until a predetermined stopping criterion is met. 

1-16. (canceled)
 17. A node positioning method for a wireless network, the network including nodes whose positions are known, as anchor nodes, and nodes whose positions have to be determined, as regular nodes, the method comprising: (a) each node measuring respective strengths of signals received from neighboring nodes; (b) classifying channels linking any neighboring nodes into different channel categories; (c) allocating path loss parameters to each of the channels according to the category the channel is classified into; (d) estimating distances separating each regular node from each of its neighboring nodes, and respective variances thereof, on the basis of measured strengths of the signals respectively received from its neighboring nodes and the path loss parameters thus allocated to the channels linking it with each of its neighboring nodes; (e) estimating the positions of the regular nodes by minimizing a cost function depending upon weighted quadratic differences between the distances separating each regular node from its neighboring nodes and the distances estimated from (d), the weights being inversely proportional to the respective variances of the distances, as estimated from (d).
 18. A node positioning method according to claim 17, wherein, at (b), the channels are classified into categories of line of sight, non line of sight, and non line of sight with deep attenuation.
 19. A node positioning method according to claim 17, wherein the path loss parameters allocated to a channel are a path loss value at a reference distance, a path loss decay exponent, and a shadowing coefficient, the path loss value, the path loss decay exponent, and the shadowing coefficient being dependent upon a category into which the channel has been classified.
 20. A node positioning method according to claim 17, wherein, at (b), the channels are classified on the basis of statistics of power envelopes of signals received from the channels.
 21. A node positioning method according to claim 17, wherein, at (b), the channels are classified on the basis of a crossing rate and/or average fade duration crossing rate of power envelopes of signals received from the channels.
 22. A node positioning method according to claim 17, wherein (b) classifies all the channels into a line of sight category, in a first attempt, and after (c), (d), (e) have been completed, updates the first channel classification, in a second attempt, depending upon positions of the regular nodes estimated at (e).
 23. A node positioning method according to claim 22, further comprising calculating, for each channel linking a regular node and one of its neighboring nodes, an optimization residual indicative of a difference between a distance estimated at (d) and a refined estimated distance calculated from a position of the regular node estimated at (e) and from a position of the neighboring node, either known, if it is an anchor node, or estimated at (e) otherwise.
 24. A node positioning method according to claim 23, wherein if the optimization residual relative to a channel exceeds a predetermined first threshold, it is classified into the non line of sight category and is maintained in the line of sight category otherwise.
 25. A node positioning method according to claim 24, wherein if the optimization residual relative to a channel exceeds a predetermined second threshold higher than the first threshold, it is classified in the category of non line of sight with deep attenuation.
 26. A node positioning method according to claim 24, wherein a predetermined percentage of the channels classified into the non line of sight category, and exhibiting largest optimization residuals, are classified in the category of non line of sight with deep attenuation.
 27. A node positioning method according to claim 25, wherein (b), (c), (d) and (e) are iterated, an allocation of path loss parameters in (c) taking into account updated classification of the channels of (b), the distances separating each regular node from each of its neighboring nodes and the variances thereof being estimated at (d) on the basis of the path loss parameters allocated at (c), the positions of the regular nodes being obtained by minimizing the cost function calculated with the distances and distance variances estimated at (d).
 28. A node positioning method according to claim 17, wherein, in a first run, the path loss parameters are initialized in (c) at predetermined values for each channel category, and after (d), (e) have been completed, (f) refined distance estimates are calculated on basis of the positions of the regular nodes estimated at (e); (g) the refined distance estimates are used to estimate updated path loss parameters for each channel category; and in a second run of (c), the channels being allocated the updated path loss parameters according to the categories they are respectively classified into.
 29. A node positioning method according to claim 28, wherein (c), (d), (e), (f) and (g) are iterated, the distances and the variances thereof being estimated for each channel category, at (d), on the basis of the updated path loss parameters, the positions of the regular nodes being obtained by minimizing the cost function calculated with the distances and the variances thereof just estimated at (e).
 30. A node positioning method according to claim 17, wherein, distances and variances thereof which have been estimated at (d) are corrected by performing (d′ 1) and (d′ 2) in which: (d′ 1) the distance estimate between any regular node and each neighboring node thereof is corrected for a systematic bias depending upon a detection threshold of a receiver equipping the regular node, the path loss decay exponent and the shadowing coefficient of the channel linking the regular and the neighboring node; (d′ 2) the distance variance is corrected on the basis of the detection threshold of the receiver in the regular node, path loss decay exponent and shadowing coefficient of the channel linking the regular node and the neighboring node; and the positions of the regular nodes are estimated at (e) by minimizing the cost function depending upon weighted quadratic differences between the distances separating each regular node from its neighboring nodes and the corresponding estimated distances corrected at (d′ 1), the weights being inversely proportional to the respective estimated variances of these distances, corrected at (d′ 2).
 31. A node positioning method according to claim 17, wherein the cost function is minimized in (e) according to an iterative process, each iteration providing an estimate of the positions of the regular nodes and deducing therefrom a refined estimate of the distances separating each regular node from its neighboring nodes, the refined estimate being used for calculating: a systematic bias depending upon a detection threshold of a receiver equipping the regular node, the path loss decay exponent and the shadowing coefficient of the channel linking the regular node and the neighboring node, the distance estimate at (d) being corrected by the systematic bias; a corrected distance variance depending upon the detection threshold, path loss decay exponent and shadowing coefficient; the positions of the regular nodes being estimated at the next iteration by keeping on minimizing the cost function depending upon weighted quadratic differences between the distances separating each regular node from its neighboring nodes and the corresponding estimated distances thus corrected, the weights being inversely proportional to the respective estimated variances of these distances thus corrected.
 32. A node positioning method according to claim 17, wherein the cost function is minimized by a steepest descent algorithm, the node positions being first initialized by coarse node positions supplied by a range-free positioning algorithm. 